#include "Unidade.h"


Unidade::Unidade(void)
{
}

Unidade::Unidade(int idd, string pp, int xx, int yy){
	id=idd;
	pop=pp;
	x=xx;
	y=yy;
	move=0;

	atk=0;
	def=0;
}
Unidade::~Unidade(void)
{
}

void Unidade::setAtkDef(int at, int de){
	atk=at;
	def=de;
}

void Unidade::Posicao(int xx, int yy){
	x=xx;
	y=yy;
}

void Unidade::PosicaoDest(int xx, int yy){
	xdest=xx;
	ydest=yy;
}

int Unidade::getX(){
	return x;
}

int Unidade::getY(){
	return y;
}

void Unidade::setX(int xx){
	x=xx;
}

void Unidade::setY(int yy){
	y=yy;
}

int Unidade::getXdest(){
	return xdest;
}

int Unidade::getYdest(){
	return ydest;
}

int Unidade::getId(){
	return id;
}

void Unidade::setCustos(int mad, int ped, int our){
	cmadeira=mad;
	cpedra=ped;
	couro=our;
}

void Unidade::setCargaVeloc(int cc, int vv){
	carga=cc;
	velocidade=vv;
}

void Unidade::setSaude(int ss){
	saude=ss;
}

int Unidade::getSaude(){
	return saude;
}

string Unidade::getPop(){
	return pop;
}

int Unidade::moveUnidade()
{
	int mexe=0; //se for 0, o soldado nao se mexeu, se 1 o soldado mexeu-se

	if(x>xdest){
		x--;
		mexe=1;
	}
	else
		if(x<xdest){
			x++;
			mexe=1;
		}else
			if(y>ydest){
				y--;
				mexe=1;
			}
			else
				if(y<ydest){
					y++;
					mexe=1;
				}

	if(x==xdest && y==ydest)	//se o soldado tiver chegado ao destino
		move=0;
	else
		move=1;

	return mexe;
}

void Unidade::setMove(int m)
{
	move=m;
}

int Unidade::getMove()
{
	return move;
}